/**
 * 找到父节点
 * @param target 目标节点
 * @param className 元素节点名称
 * @returns 目标节点
 */
export function findParentNode(
  target: HTMLElement,
  className: string
): HTMLElement {
  //往上查找父节点
  while ((target = target.parentNode as HTMLElement)) {
    //直到找到符合目标节点的元素名称时结束
    if (target.className === className) {
      return target;
    }
  }
}

/**
 * 创建一项节点
 *  1. 创建外层div
 *  2. 新增样式
 *  3. 使用父类的实例方法拿到的模板字符串替换为该节点内容
 * @param {string} tagName
 * @param {string} className
 * @param {string} todoItem 一项字符串的模板
 * @returns {HTMLElement} 一项节点
 */
export function createItem(
  tagName: string,
  className: string,
  todoItem: string
): HTMLElement {
  const oItem: HTMLElement = document.createElement(tagName);
  oItem.className = className;
  oItem.innerHTML = todoItem;
  return oItem;
}
